wayland: Be more careful when destroying windows
authorMatthias Clasen <mclasen@redhat.com>
Fri, 28 Aug 2015 17:55:23 +0000 (13:55 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Fri, 28 Aug 2015 20:15:26 +0000 (16:15 -0400)
We call gdk_wayland_window_hide_surface when the window gets
destroyed, and in this case, the frame clock might not exist
anymore.

This was showing up in the displayclose testcase.

gdk/wayland/gdkwindow-wayland.c

index afebcd3575e965a455793b2ee5e4ef447696b7d8..9190d4780c27afd7b11d5b9c4bec7e2e205dc383 100644 (file)
@@ -1345,8 +1345,12 @@ gdk_wayland_window_hide_surface (GdkWindow *window)
 
       if (impl->awaiting_frame)
         {
+          GdkFrameClock *frame_clock;
+
           impl->awaiting_frame = FALSE;
-          _gdk_frame_clock_thaw (gdk_window_get_frame_clock (window));
+          frame_clock = gdk_window_get_frame_clock (window);
+          if (frame_clock)
+            _gdk_frame_clock_thaw (frame_clock);
         }
 
       if (impl->gtk_surface)